from django.db import models
from django.contrib.auth import get_user_model
from comicinfo.models import ComicInfo
from django.utils.timezone import now

# Create your models here.
Users = get_user_model()


# ⬇ 评论模块
class Comments(models.Model):
    # ⬇ 两个外键，连接用户和电影
    # ⬇ 避免删除外键时，删掉信息，信息可以为空，假设用户被删掉，评论为空
    user = models.ForeignKey(Users, verbose_name='评论的用户', on_delete=None, null=True)
    comic = models.ForeignKey(ComicInfo, verbose_name='评论的漫画', on_delete=None, null=True)
    # ⬇ 评论最大长度
    content = models.TextField(max_length=2000, verbose_name='评论内容')
    # ⬇ 评论时间
    time = models.DateTimeField(default=now)

    def __str__(self):
        return '用户id:{},对漫画{}:的评论'.format(self.user.id, self.comic.book_name)

    class Meta:
        verbose_name = '漫画评论'
        verbose_name_plural = verbose_name
        # ⬇ 一个用户只能在一部电影下评论一次
        # ⬇ 但是可以单个重复；即一个用户评论多部电影，一部电影可被多个用户评论
        # ⬇ user 和 comic 都需要加上 unique，所以在此使用 unique_together
        unique_together = ('user', 'comic')

